// 引用用户请求api
// import auth from '../../api/auth/auth.js';
// import user from '../../api/user/user.js';
// import friend from '../../api/friend/friend.js';

// import usertoGroup from '../../api/usertoGroup/usertoGroup.js';


import {
	login,
	getInfo,
	InfoChange,
	avatarUpload,
	updatePwd
} from '@/api/login/login.js'

import {
	setToken,
	setUserInfo,
	getUserInfo
} from '../../utils/auth';
let that = this


const state = {
	userInfo: getUserInfo() || {
		uNickname: "小A"
	}
}
const mutations = {
	SETUSERINFO(state, data) {
		state.userInfo = data
		setUserInfo(data) //将获取到的token保存到本地
	},
}

//下面我是示例的微信小程序的参数，可自行修改请求参数
const actions = {
	changeInfo({
		commit
	}, param) {
		return new Promise((resolve, reject) => {
			InfoChange(param).then(response => {
				// 这里可以自己添加方法
				commit('SETUSERINFO', response)
				// 保存获取到的token到本地之类的
				// 必须在resolve之前执行
				resolve(response)
			}).catch(error => {
				// if (error.data.code === 400) {
				// 	this.wxLogin()
				// }
				console.log(error, "err")
			})
		})
	},
	getInfo({
		commit
	}, param) {
		return new Promise((resolve, reject) => {
			getInfo(param).then(response => {
				// 这里可以自己添加方法
				commit('SETUSERINFO', response.user)
				// 保存获取到的token到本地之类的
				// 必须在resolve之前执行
				console.log(response, "response");
				resolve(response.user)
			}).catch(error => {
				// if (error.data.code === 400) {
				// 	this.wxLogin()
				// }
				console.log(error, "err")
			})
		})
	},

};


export default {
	namespaced: true,
	state,
	mutations,
	actions
}